package edu.upc.rentacar.service;

import java.util.ArrayList;
import java.util.List;

import org.apache.log4j.Logger;
import org.springframework.stereotype.Service;

import edu.upc.rentacar.domain.Auto;

@Service("autoService")
public class AutoService {

	protected static Logger logger = Logger.getLogger("service");
	
	private List<Auto> autos = new ArrayList<Auto>();
	
	public AutoService(){
		logger.debug("Init database");
		
		// Create in-memory list
		Auto auto1 = new Auto();
		auto1.setId(0L);
		auto1.setAno("2012");
		auto1.setMarca("Toyota");
		auto1.setPlaca("XX-2992");
		
		Auto auto2 = new Auto();
		auto2.setId(1L);
		auto2.setAno("2012");
		auto2.setMarca("Hunday");
		auto2.setPlaca("OW-2929");

		Auto auto3 = new Auto();
		auto3.setId(2L);
		auto3.setAno("2011");
		auto3.setMarca("Audi");
		auto3.setPlaca("UE-292");
		
		autos.add(auto1);
		autos.add(auto2);
		autos.add(auto3);
		
	}
	
	
	/**
	 * Retrieves all persons
	 */
	public List<Auto> getAll() {
		logger.debug("Retrieving all cars");
		
		return autos;
	}
	
	/**
	 * Retrieves a single person
	 */
	public Auto get( Long id ) {
		logger.debug("Retrieving auto with id: " + id);
		
		for (Auto auto:autos) {
			if (auto.getId().longValue() == id.longValue()) {
				logger.debug("Found record");
				return auto;
			}
		}
		
		logger.debug("No records found");
		return null;
	}
	

}
